#pragma once
#define GAME_SIZE 4

struct GameData {
    int board[GAME_SIZE][GAME_SIZE] = { 0 };
    int score = 0;
};

void initGame(GameData& data);
void addNewTile(GameData& data);
bool moveLeft(GameData& data);
bool moveRight(GameData& data);
bool moveUp(GameData& data);
bool moveDown(GameData& data);
bool isGameOver(const GameData& data);